0 REM SPRITE EDITOR WHY 1 REM KEYED IN FROM 2 REM COMPUTE!'S BOOK OF 3 REM C-64 GRAPHICS 4 REM BY 5 REM JOHN MOORE 6 REM DEBUGGED BY 7 REM CARL GARANT 10 REM *** CHANGE SCREEN POINTERS *** 21 PRINT CHR$(8);:LZ$(0)="[207]":LZ$(1)=" 0" 25 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,237,213,0,255,200,0,19,127,240,0,0,0 26 DATA 255,0,254,246,241,242,243,244,999 27 R3=PEEK(53272) 30 POKE 56578,PEEK(56578) OR 3 40 POKE 56576,(PEEK(56576)AND 252)OR 0 50 POKE 53272,(PEEK(53272) AND 240)OR 2 60 POKE 648,196:FF=0 70 REM 71 REM ** SET-UP SPRITE REGISTERS ** 72 FOR R=53287 TO 53294: POKE R,14:NEXT 73 FOR R=0 TO 7: POKE 51192+R,R:NEXT: POKE 53269,255: POKE 53264,0 74 FOR R=49152 TO 49663 STEP 6: POKE R,170:POKE R+1,170:POKE R+2,170:NEXT 75 FOR R=49155 TO 49663 STEP 6: POKE R,85:POKE R+1,85:POKE R+2,85:NEXT 76 FOR R=0 TO 14 STEP 2: POKE R+53248,25+R*15:POKE R+53249,52:NEXT 79 REM 80 REM ** TRANSFER CHARACTER SET ** 90 REM 100 POKE 56334,PEEK(56334)AND254 110 POKE 1, PEEK(1)AND 251 120 FOR R=53348 TO 55296 130 POKE R-2048, PEEK(R):NEXT 140 POKE 1, PEEK(1) OR 4 150 POKE 56334,PEEK(56334) OR 1 160 REM 170 REM ** DEFINE CHARACTER GRID ** 171 DIM G(47),ZX(47),T(64),Y(64),C$(16) 180 REM 190 CG$="[207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][165][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]" 191 CF$=" [165][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]" 195 BK$=" [157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]" 196 BE$=" " 230 REM ** ENABLE SPRITE DISPLAY ** 240 REM 250 POKE 53269,255 340 REM ** DEFINE FUNCTION KEYS ** 350 REM 351 FOR R= 1TO30: S$=S$+"":NEXT 360 FOR N= 1 TO 8 STEP 2 370 K$(N)="[162][162][162][162][162][157][157][157][157][157] F"+STR$(N)+" [157][157][157][157][157][157][157][146][167][162][162][162][162][162][146] [165]" 380 K$(N+1)="[167][169] F"+STR$(N+1)+" [223][146][165]" 390 P$(N)="[176][192][192][192][174][157][157][157][157][157][194]F"+STR$(N)+"[146][194][157][157][157][157][157][157][157][146][167] [173][192][192][192][189][146] [165]"+"[157]" 400 P$(N+1)="[167][206] F"+STR$(N+1)+" [205][146][165]":NEXT 405 REM 410 REM ** DEFINE KEY POSITIONS ** 415 REM 420 FOR R=1 TO 8: K$(R)=""+K$(R):NEXT 430 FOR R= 1 TO 7 STEP 2: K$(R)=""+SP$+K$(R):SP$=SP$+"":NEXT 440 SP$="":FOR R=2TO8 STEP 2: K$(R)=""+SP$+K$(R):SP$=SP$+"":NEXT:SP$="" 450 FOR R=1 TO 8:P$(R)=""+P$(R):NEXT 460 FOR R=1TO7 STEP2: P$(R)=""+SP$+P$(R):SP$=SP$+"":NEXT 470 SP$="":FOR R=2TO8 STEP 2: P$(R)=""+SP$+P$(R):SP$=SP$+"":NEXT 480 REM 490 REM ** DEFINE MESSAGES ** 500 REM 510 M$(1)="EDIT.[146][157][157][157][157][157]SAVE.[146][157][157][157][157][157]" 520 M$(1)=M$(1)+"LOAD.[146][157][157][157][157][157]COPY.[146][157][157][157][157][157]CLEAR[146][157][157][157][157][157]" 530 M$(1)=M$(1)+"FILL.[146][157][157][157][157][157]WORK.[146][157][157][157][157][157]FNCTN[146]" 540 M$(2)="REVRS[146][157][157][157][157][157]INVRT[146][157][157][157][157][157]" 550 M$(2)=M$(2)+"FLIP.[146][157][157][157][157][157]SCL R[146][157][157][157][157][157]SCL L[146][157][157][157][157][157]" 560 M$(2)=M$(2)+"SCL U[146][157][157][157][157][157]SCL D[146][157][157][157][157][157]FNCTN[146]" 570 REM 580 REM ** DEFINE RULER LINES ** 590 REM 600 L$="[192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][177][157][221][157][145][221][157][145][221][192][192][192][192][192][192][192][192][192]" 610 L$=L$+"[157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192]" 900 REM 910 REM ** DISPLAY EDIT SCREEN ** 920 REM 930 PRINT"[147]";CD$:PRINTL$:PRINTM$(1) 932 PRINT"";:FOR R=0TO19:PRINTCG$;:NEXT:PRINT"[207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][165][147]"; 1000 REM 1010 REM ** DISPLAY FUNCTION KEYS ** 1020 REM 1030 PRINT"";:FOR R=1TO8: PRINTK$(R);:NEXT: PRINT""; 1035 PRINTM$(1) 1040 A(0)=1:A(1)=3:A(2)=5:A(3)=7:A(4)=2:A(5)=4:A(6)=6:A(7)=8 1050 REM 1060 REM ** GET KEYBOARD ENTRY ** 1070 REM 1080 PRINT"ENTER FUNCTION:[146][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]"; 1081 REMPRINT" " 1082 GETA$:IFA$=""THEN1080 1084 REM 1085 REM -- SKIP INVALID KEYS -- 1086 REM 1087 VA=ASC(A$) 1088 IF (VA>132 AND VA<141) THEN 1130 1089 IF (VA<49 OR VA>56) THEN 1080 1090 GOTO 1205 1100 REM 1110 REM -- GET FUNCTION KEYS -- 1120 REM 1130 PRINTP$(A(ASC(A$)-133)) 1140 FORR=0TO99:NEXT 1150 PRINTK$(A(ASC(A$)-133));""; 1160 GOTO 1390 1180 REM 1190 REM -- PRINT EDITED SPRITE -- 1200 REM 1205 POKE SP*2+53248,25+SP*30 1210 POKE 53264,2^(VA-49):POKE53248+(VA-49)*2,40:SP=VA-49 1220 GOTO 1265 1265 PRINT"ENTRY MODE: [146][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]"; 1267 PRINT"SPRITE #[146]";SP+1;"[157] " 1268 PRINT"";:FOR R=0TO19:PRINTCG$;:NEXT:PRINT"[207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][165]"; 1270 PRINT""; 1272 LZ$(0)="[207]":LZ$(1)=" [146]" 1275 FOR R=0TO62 1277 IF (R<>0) AND (R/3=INT(R/3)) THEN GOSUB 1310 1278 RR=PEEK(R+(49152+64*SP)) 1279 PRINTLZ$(ABS((RRAND128)=128));LZ$(ABS((RRAND64)=64));LZ$(ABS((RRAND32)=32)); 1280 PRINTLZ$(ABS((RRAND16)=16));LZ$(ABS((RRAND8)=8));LZ$(ABS((RRAND4)=4)); 1281 PRINTLZ$(ABS((RRAND2)=2));LZ$(ABS((RRAND1)=1)); 1283 NEXT: GOTO 1080 1310 PRINT"[157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]";:RETURN 1360 REM 1370 REM -- SPECIAL FUNCTION ROUTINES -- 1380 REM 1390 IF FF=1 THEN 1500 1400 ON A(ASC(A$)-133) GOTO 2005,1432,1442,1452,1461,1471,2700,1493 1410 GOTO 1170 1430 REM 1431 REM -- SAVE SPRITES -- 1432 POKE SP*2+53248,25+SP*30:POKE 53264,0 1433 PRINT"SAVE ON DISK OR[146][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]"; 1434 PRINT"CASSETTE? (C/D)[146]" 1435 GETA$:IFA$=""THEN1435 1436 IF A$<>"C" AND A$<>"D" THEN 1087 1437 Q$=A$:GOTO 1760 1440 REM 1441 REM -- LOAD SPRITES -- 1442 POKE SP*2+53248,25+SP*30:POKE 53264,0 1443 PRINT"LOAD ON DISK OR[146][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]"; 1444 PRINT"CASSETTE? (C/D)[146]" 1445 GET A$:IFA$=""THEN1445 1446 IF A$<>"C" AND A$<>"D" THEN 1087 1447 Q$=A$:GOTO 1910 1450 REM 1451 REM -- (null) A SPRITE -- 1452 PRINT"SPRITE TO COPY?[146][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]"; 1453 PRINT"ENTER (1-8) [146]" 1454 GET CA$:IF CA$="" THEN 1454 1455 GOTO 1605 1456 IF CA$="" THEN 1454 1459 GOTO 1275 1460 REM --- CLEAR A SPRITE --- 1461 PRINT"CLEARING [146][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]"; 1462 PRINT"SPRITE # [146][157][157][157][157][157][157][157]";SP+1 1463 H=49152+64*SP 1464 FOR R=H TO H+63:POKE R,0:NEXT 1465 PRINT"";:FOR R=0TO19:PRINTCG$;:NEXT:PRINT"[207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][207][165]"; 1467 GOTO 1080 1470 REM -- FILL A SPRITE -- 1471 PRINT"FILLING [146][157][157][157][157][157][157][157][157][157][157][157][157][157][157]"; 1472 PRINT"SPRITE # [146][157][157][157][157][157][157][157]";SP+1 1473 H=49152+64*SP 1474 FOR R=H TO H+63: POKE R,255: NEXT 1475 PRINT"";:FOR R=0TO19:PRINTCF$;:NEXT:PRINT" [146][165] 1477 [137] 1080 1490 [143] 1491 [143] -- SWITCH FUNCTION SET -- 1492 [143] 1493 FF[178]1:[153]M$(2);"";:[137] 1080 1499 [142] 1500 [145] A([198](A$)[171]133) [137] 1522,1531,1541,1551,1561,1572,1582,1593 1510 [137] 1170 1520 [143] 1521 [143] -- REVERSE SPRITE BITS -- 1522 [153]"REVERSING: WAITCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMD"; 1523 [153]"SPRITE # WAITCMDCMDCMDCMDCMDCMDCMD";SP[170]1 1524 H[178]49152[170]64[172]SP 1525 [129] R[178]H [164] H[170]63:[151] R,255[171][194](R):[130] 1529 [137] 1270 1530 [143] -- INVERT SPRITE BITS -- 1531 [153]"INVERTING: WAITCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMD"; 1532 [153]"SPRITE # WAITCMDCMDCMDCMDCMDCMDCMD";SP[170]1 1533 H[178]49152[170]64[172]SP 1534 [129] R[178]H [164] H[170]62:T(R[171]H)[178][194](R):[130] 1535 [129] R[178]H [164] H[170]60 [169] 3 1536 [151] R,T(60[171](R[171]H)) 1537 [151] R[170]1,T(61[171](R[171]H)) 1538 [151] R[170]2,T(62[171](R[171]H)):[130]:[137] 1270 1540 [143] -- FLIP SPRITE BITS -- 1541 [153]"FLIPPING: WAITCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMD"; 1542 [153]"SPRITE # WAITCMDCMDCMDCMDCMDCMDCMD";SP[170]1 1543 H[178]49152[170]64[172]SP 1544 [129] R[178]H[164]H[170]62: T(R[171]H)[178][194](R):[130] 1545 [129] R[178]H [164]H[170]60[169]3:[151] R[170]2,T(R[171]H):[151] R[170]1,T(R[170]1[171]H):[151] R,T(R[170]2[171]H):[130] 1546 [129] U[178]H [164] H[170]63:Z[178][194](U):R[178]128[172]([182](Z[175]1)[178]1)[170]64[172]([182]((Z[175]2)[178]2)) 1547 R[178]R[170]32[172]([182]((Z[175]4)[178]4))[170]16[172]([182]((Z[175]8)[178]8))[170]8[172]([182]((Z[175]16)[178]16)) 1548 R[178]R[170]4[172]([182]((Z[175]32)[178]32))[170]2[172]([182]((Z[175]64)[178]64))[170]1[172]([182]((Z[175]128)[178]128)) 1549 R[178][182](R):[151]V,R:[130]:[137]1270 1550 [143] -- SCROLL RIGHT -- 1551 [153]"SCROLLING RIGHTWAITCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMD"; 1552 [153]"SPRITE # WAITCMDCMDCMDCMDCMDCMDCMD";SP[170]1 1553 [129] U[178]49152[170]64[172]SP[164](49152[170]64[172]SP)[170]62 [169] 3 1554 R[178]([194](U)[173]2):R1[178]([194](U[170]1)[173]2):R2[178]([194](U[170]2)[173]2) 1555 [139] [194](U)[173]2[179][177][181]([194](U)[173]2) [167] R1[178]R1[170]128 1556 [139] [194](U[170]1)[173]2[179][177][181]([194](U[170]1)[173]2) [167] R2[178]R2[170]128 1557 [139] [194](U[170]2)[173]2[179][177][181]([194](U[170]2)[173]2) [167] R[178]R[170]128 1558 [151] U,R:[151]U[170]2,R2 1559 [130]: [137]1270 1560 [143] --- SCROLL LEFT --- 1561 [153]"SCROLLING LEFT WAITCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMD"; 1562 [153]"SPRITE # WAITCMDCMDCMDCMDCMDCMDCMD";SP[170]1 1563 [129]U[178]49152[170]64[172]SP[164](49152[170]64[172]SP)[170]62[169]3:R[178][194](U)[172]2:R1[178][194](U[170]1)[172]2:R2[178][194](U[170]2)[172]2 1564 [139] [194](U)[178][177]128 [167] R2[178]R2[170]1 1565 [139] R2[177]255 [167] R2[178]R2[171]256 1566 [139] [194](U[170]1)[178][177]128 [167] R[178]R[170]1 1567 [139] R[177]255 [167] R[178]R[171]256 1568 [139] [194](U[170]2)[178][177]128 [167] R1[178]R1[170]1 1569 [139] R1[177]255 [167] R1[178]R1[171]256 1570 [151] U,R:[151] U[170]1,R1:[151] U[170]2,R2:[130]: [137] 1270 1571 [143] --- SCROLL UP --- 1572 [153]"SCROLLING UP WAITCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMD"; 1573 [153]"SPRPEEKTE # CMDCMDCMDCMDCMDCMDCMD";SP[170]1 1574 U[178]49152[170]64[172]SP:Y[178][194](U):Y1[178][194](U[170]1):Y2[178][194](U[170]2) 1575 [129] R[178]0 [164] 59 [169] 3 1576 [151] U[170]R,[194](U[170]R[170]3):[151] U[170]R[170]1,[194](U[170]R[170]4):[151] U[170]R[170]2,[194](U[170]R[170]5):[130] 1577 [151]U[170]60,Y:[151]U[170]61,Y1:[151]U[170]62,Y2 1578 [137] 1270 1580 [143] 1581 [143] --- SCROLL DOWN --- 1582 [153]"SCROLLING DOWN WAITCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMD"; 1583 [153]"SPRITE # X WAITCMDCMDCMDCMDCMDCMDCMD";SP[170]1 1584 U[178]49152[170]64[172]SP:Y[178][194](U[170]60):Y1[178][194](U[170]61):Y2[178][194](U[170]62) 1585 [151]U[170]62,[194](U[170]62[171]3) 1586 [129] M[178]59 [164] 2 [169] [171]3 1587 [151] U[170]M,[194](U[170]M[171]3):[151]U[170]M[170]1,[194](U[170]M[171]2):[151] U[170]M[170]2,[194](U[170]M[171]1):[130] 1588 [151]U,Y:[151]U[170]1,Y1:[151]U[170]2,Y2 1589 [137] 1270 1590 [143] 1591 [143] -- SWITCH FUNCTION SET -- 1592 [143] 1593 FF[178]0: [153]M$(1);"";:[137]1080 1599 [142] 1600 [143] 1601 [143] ** [211] SPRITE ROUTINE ** 1602 [143] 1605 DA[178][198](CA$) 1610 [139] (DA[177]132 [175] DA[179]141) [167] VA[178]DA:[137] 1130 1620 [139] (DA[179]49 [176] DA[177]56) [167] 1080 1690 VJ[178]49152[170]64[172]SP:JJ[178]49152[170]64[172](DA[171]49) 1700 [129] R[178]0 [164] 63 1710 [151] VJ[170]R,[194](JJ[170]R):[130] 1720 [137] 1270 1730 [143] 1740 [143] ** SAVE SPRITE ROUTINE ** 1750 [143] 1760 [153]"SAVE:(NAME) WAITCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMD"; 1765 [153]"------.SPR CMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMD"; 1770 LL[178]0:NM$[178]"" 1775 [129] R[178]0 [164] 30: [153]"-WAITCMD"; 1780 [161] A$:[139]A$[178]""[167] [130] 1790 [139]A$[179][177]""[167] 1840 1800 [129] R[178]0[164]30:[153]"-CMD"; 1810 [161] A$:[139]A$[178]"" [167] [130] 1820 [139]A$[179][177]""[167] 1840 1830 [137] 1775 1840 [139]A$[178][199](20)[176]A$[178][199](148)[176]A$[178][199](13)[176]A$[178][199](34)[176]A$[178]"ON"[167] 1775 1845 [139]A$[178]""[176]A$[178]"CMD"[167]1775 1847 [139] [198](A$)[177]132 [175] [198](A$)[179]141 [167] 1080 1850 [153]A$; 1855 NM$[178]NM$[170]A$:LL[178]LL[170]1:[139]LL[178]6[167]1870 1860 [137] 1775 1870 NM$[178]NM$[170]".SPR" 1872 [129] R[178]53248 [164] 53294:ZX(R[171]53248)[178][194](R):[130] 1874 [151] SP[172]2[170]53248,25[170]SP[172]30:[151] 53264, 0 1875 [139] Q$[178]"C"[167] 1890 1880 [140]:[159] 1,8,4,"@:"[170]NM$[170]",W":R[178]0 1881 [135] F: [139] F[179][177]999 [167] [151] R[170]53248,F:R[178]R[170]1:[137]1881 1882 [129] R[178]49152 [164] 49663 1883 [153]"";R[171]49152 1884 [152]1,[194](R) 1885 [130]:[129] R[178]53248 [164] 53294:[151] R,ZX(R[171]53248):[130] 1888 [160]1:[153]" ";:[137]1080 1890 [159]1,1,1,NM$:[137] 1881 1900 [143] 1901 [143] *** LOAD SPRITES ROUTINE *** 1902 [143] 1910 [153]"LOAD:(NAME) WAITCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMD"; 1913 [140] 1915 [153]"------.SPRWAIT CMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMD"; 1920 LL[178]0:NM$[178]"" 1925 [129] R[178]0[164]30:[153]"-WAITCMD"; 1930 [161] A$:[139] A$[178]""[167] [130] 1935 [139]A$[179][177]""[167] 1960 1940 [129] R[178]0[164]30:[153]"-CMD"; 1945 [161] A$:[139]A$[178]""[167] [130] 1950 [139]A$[179][177]""[167] 1960 1955 [137] 1925 1960 [139]A$[178][199](20)[176]A$[178][199](148)[176]A$[178][199](13)[176]A$[178][199](34)[176]A$[178]"ON"[167] 1925 1965 [139]A$[178]""[176]A$[178]""[176]A$[178]"CMD"[167]1925 1970 [139] [198](A$)[177]132 [175] [198](A$)[179]141 [167] 1080 1975 [153]A$; 1980 NM$[178]NM$[170]A$:LL[178]LL[170]1:[139]LL[178]6[167]1990 1985 [137] 1925 1990 NM$[178]NM$[170]".SPR" 1991 [129] R[178]53248 [164] 53294:ZX(R[171]53248)[178][194](R):[130] 1992 [151] SP[172]2[170]53248,25[170]SP[172]30:[151] 53264, 0 1993 [139] Q$[178]"C"[167] 2001 1994 [159] 1,8,4,NM$[170]",R" 1995 R[178]0:[135] F:[139]F[179][177]999 [167] [151] R[170]53248,F:R[178]R[170]1: [137] 1995 1996 [129] R[178]49152 [164] 49663 1997 [153]"";R[171]49152 1998 [132]1,A:[151] R,A:[130] 1999 [129] R[178]53248 [164] 53294:[151] R,ZX(R[171]53248):[130] 2000 [160]1:[153]" ";:[137] 1080 2001 [159] 1,1,0,NM$:[137] 1995 2002 [143] 2003 [143] *** SPRITE EDIT ROUTINE *** 2004 [143] 2005 [153]"EDIT MODE: WAITCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMD"; 2010 [139] [194](53264)[178]0 [167] [153]"WHICH SPRITE?WAIT CMDCMDCMDCMDCMDCMDCMD";:[137] 1082 2015 LO[178]50336:SV[178][194](LO) :SM[178](49152[170](SP[172]64)):EX[178]7 :GT[178]SC: BY[178]0 2020 [129] R[178]0[164]30:[151]LO,SV 2030 [161] A$:[139]A$[178]""[167] [130] 2040 [139]A$[179][177]""[167] 2090 2050 [129] R[178]0[164]30: [151] LO,102 2060 [161] A$:[139]A$[178]""[167] [130] 2070 [139]A$[179][177]""[167] 2090 2080 [137] 2020 2090 [139]A$[178]"ON"[167] 2200 2091 [139]A$[178]""[167] 2100 2092 [139]A$[178]"CMD"[167] 2300 2093 [139]A$[178]""[167] 2400 2094 [139]A$[178][199](32) [175] SV[178]160 [167] 2500 2095 [139]A$[178][199](32) [175] SV[178]79 [167] 2600 2099 [151] LO,SV:[137] 1087 2100 [151] LO,102:[129] R[178]0[164]40:[130] 2110 [139] GT[178][177]SC[170]60 [167] 2020 2120 [151] LO,SV: LO[178]LO[170]40: GT[178]GT[170]3: SV[178][194] (LO):SM[178]SM[170]3: [137] 2020 2200 [151] LO,102:[129] R[178]1[164]40:[130] 2210 [139] GT[178][179]SC[170]2 [167] 2020 2220 [151] LO,SV: LO[178]LO[171]40: GT[178]GT[171]3: SV[178][194](LO):SM[178]SM[171]3: [137] 2020 2300 [151] LO,102:[129] R[178]0[164]40:[130] 2310 [139] EX[178]7 [175] BY[178]0 [167] 2020 2315 [139]EX[178]7[167][151]LO,SV:LO[178]LO[171]1:EX[178]0:SM[178]SM[171]1:GT[178]GT[171]1:SV[178][194](LO):BY[178]BY[171]1:[137]2020 2320 [151] LO,SV:LO[178]LO[171]1:EX[178]EX[170]1:SV[178][194](LO):[137] 2020 2400 [151] LO,102:[129] R[178]0[164]40: [130] 2410 [139] EX[178]0 [175] BY[178]2 [167] 2020:SV[178][194](LO):[137] 2020:SV[178][194](LO):BY[178]BY[171]1:[137]20 2415 [139]EX[178]0[167][151]LO,SV:LO[178]LO[170]1:EX[178]7:SM[178]SM[170]1:GT[178]GT[170]1:SV[178][194](LO):BY[178]BY[170]1:[137]2020 2420 [151] LO,SV:LO[178]LO[170]1:EX[178]EX[171]1:SV[178][194](LO):[137] 2020 2500 [151] LO,79: [151] SM,[194](SM)[171](2[174]EX):SV[178]79:[137] 2020 2600 [151] LO, 160:[151] SM,[194](SM)[170](2[174]EX):SV[178]160:[137] 2020 2700 [143] 2701 [143] REM *** WORK SPACE ROUTINE *** 2702 [143] 2705 [153]"ENABLE SPRITE WAITCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMD"; 2707 [153]"WORK AREA WAIT" 2709 [129] R[178]0[164]14 [169] 2:[151] R[170]53248,25[170]R[172]15:[151]R[170]53249,52:[130]:[151]53264,0 2710 W$(1)[178]"SEL..CMDCMDCMDCMDCMDCOLORWAITCMDCMDCMDCMDCMD" 2711 C$(0)[178]"STOP":C$(1)[178]"":C$(2)[178]"":C$(3)[178]"OPEN":C$(4)[178]"CLR":C$(5)[178]"":C$(6)[178]"" 2712 C$(7)[178]"SYS":C$(8)[178]"FOR":C$(9)[178]"VERIFY":C$(10)[178]"DEF":C$(11)[178]"LIST":C$(12)[178]"PRINT#":C$(13)[178]"PRINT" 2713 C$(14)[178]"CONT":C$(15)[178]"POKE" 2720 W$(1)[178]W$(1)[170]"BCKGDCMDCMDCMDCMDCMDAD/DLCMDCMDCMDCMDCMDMOVE WAITCMDCMDCMDCMDCMD" 2730 W$(1)[178]W$(1)[170]"2X HZCMDCMDCMDCMDCMD2X VTCMDCMDCMDCMDCMDFNCTNWAIT" 2740 [153]"";:[129] R[178]0[164]19:[153] BK$;:[130]:[153] BE$;W$(1) 2745 [143] 2747 [143] --- GET WORK SPACE COMMANDS -- 2749 [143] 2750 [153]"ENTER FUNCTION:WAITCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMD"; 2751 [153]" " 2759 [161] W$:[139] W$[178]""[167]2759 2760 WA[178][198](W$) 2770 [139] (WA[177]132 [175] WA[179]141) [167] 3000 2780 [139] (WA[179]48 [176] WA[177]56) [167] 2750 2785 WS[178]WA[171]49 2787 [139] AD[178]1 [167] 2800 2788 [139] MV[178]1 [167] 3450 2789 [137] 2750 2791 [143] 2792 [143] -- GET SPRITES ROUTINE -- 2793 [143] 2800 [139] [194](53249[170]WS[172]2)[178][177]85 [167] 2900 2810 [151] 53248[170]WS[172]2,24:[151] 53249[170]WS[172]2,85:[137] 2759 2900 [151] 53248[170](WS[172]2),25[170](WS[172]2)[172]15:[151] 53249[170](WS[172]2),52:[137]2759 2910 [161] W$:[139] W$[178]"" [167] 2910 2920 WA[178][198](W$) 2930 [139] (WA[177]132 [175] WA[179]141) [167] 3000 2940 [139] (WA[179]48 [176] WA[177]57) [167] 2750 2950 WS[178]WA[171]49 2960 [139] AD[178]1 [167] 2800 3000 [145] WA[171]132 [137] 3150,3325,3420,3620,3222,3510,3720,3800 3100 [143] 3101 [143] -- SELECT ROUTINE -- 3102 [143] 3110 [139] I[178]15[167] I[178][171]1 3120 I[178]I[170]1:[142] 3150 [153]"SELECT DISABLEDWAITCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMD"; 3160 [153]"USE A/D OR MOVEWAIT" 3170 [129] R[178]0 [164] 1500: [130]: [137] 2750 3200 [143] 3210 [143] -- SPRITE COLOR ROUTINE -- 3220 [143] 3222 [153]"CHANGE SPRITE WAITCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMD"; 3223 [153]"COLOR (USE SEL)WAIT" 3230 [161] W$: CL$[178]W$:[139] W$[178]""[167] 3230 3231 WA[178][198](W$) 3232 [139] (WA[177]133 [175] WA[179]141) [167] 3000 3233 [139] (WA[177]47 [175] WA[179]57) [167] WS[178]WA[171]49:[137] 3270 3240 [139]W$[179][177]"INPUT"[167] 2760 3250 [141] 3110 3260 [151] 53287[170]WS,I:[137] 3230 3270 [153]"SELECTED WAITCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMD"; 3275 [153]"SPRITE # WAITCMDCMDCMDCMDCMDCMDCMD";WS[170]1 3280 [137] 3230 3300 [143] 3310 [143] -- BACKGROUND COLOR ROUTINE -- 3320 [143] 3325 [153]"USE SEL TO WAITCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMD"; 3326 [153]"CHANGE BACKGRNDWAIT" 3330 [161] CL$: [139] CL$[178]""[167] 3330 3340 [139] CL$[179][177]"INPUT"[167] W$[178]CL$:[137] 2760 3350 [141] 3100 3360 [153]"";C$(I); 3370 [153]"";:[129] R[178]0[164]19:[153]"";BK$;:[130]:[153]BE$;"CONTWAIT";:[137] 3330 3400 [143] 3410 [143] -- MOVE SPRITES ROUTINE -- 3420 [153]"MOVING WAITCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMD"; 3421 [153]"SPRITE # WAITCMDCMDCMDCMDCMDCMDCMD";WS[170]1 3425 [161] W$:[139]W$[178]"" [167] 3425 3427 WA[178][198](W$) 3429 [139] W$[178]""[176] W$[178]"ON"[176] W$[178]""[176] W$[178]"CMD" [167] 3435 3430 [139] (WA[177]133 [175] WA[179]141) [167] 3000 3432 [139] (WA[177]47 [175] WA[179]57) [167] WS[178]WA[171]49: [137] 3480 3435 [139] W$[178]""[167] 3460 3436 [139] W$[178]"ON"[167] 3465 3437 [139] W$[178]""[167] 3450 3438 [139] W$[178]"CMD"[167] 3455 3450 [139] [194] (53248[170]WS[172]2)[178]192 [167] 3425 3451 [151] 53248[170]WS[172]2,[194](53248[170]WS[172]2)[170]1:[137] 3425 3455 [139] [194](53248[170]WS[172]2)[178]25 [167] 3425 3456 [151] 53248[170]WS[172]2,[194](53248[170]WS[172]2)[171]1:[137] 3425 3460 [139] [194](53249[170]WS[172]2)[178]228 [167] 3425 3461 [151] 53249[170]WS[172]2,[194](53249[170]WS[172]2)[170]1:[137] 3425 3465 [139] [194](53249[170]WS[172]2)[178]79 [167] 3425 3466 [151] 53249[170]WS[172]2,[194](53249[170]WS[172]2)[171]1:[137] 3425 3480 [153]"MOVING WAITCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMD"; 3481 [153]"SPRITE # WAITCMDCMDCMDCMDCMDCMDCMD";WS[170]1:[137] 3425 3500 [143] 3510 [143] -- ADD/DELETE SPRITES -- 3520 [153]"ADD OR DELETE WAITCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMD"; 3530 [153]"SPRITES WAIT" 3540 AD[178]1:MV[178]0:[137] 2759 3600 [143] 3610 [143] -- EXPAND SPRITES VERTICAL -- 3620 [143] 3622 [153]"2X VERTICAL WAITCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMD"; 3623 [153]"EXPANSION WAIT" 3660 [139] ([194](53271)[175] (2[174]WS))[178]0 [167] [151] 53271,[194](53271)[170](2[174]WS):[137] 2750 3661 [151]53271,[194](53271)[171](2[174]WS):[137] 2750 3700 [143] 3710 [143] -- EXPAND SPRITES HORIZONTAL -- 3720 [143] 3722 [153]"2X HORIZONTAL WAITCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMD"; 3723 [153]"EXPANSION WAIT" 3760 [139]([194](53277) [175] (2[174]WS))[178]0 [167] [151] 53277,[194](53277)[170](2[174]WS):[137] 2750 3761 [151] 53277,[194](53277)[171](2[174]WS):[137] 2750 3800 [143] 3810 [143] -- RETURN TO MAIN ROUTINE -- 3815 [153]"EXITING SPRITE WAITCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMDCMD"; 3817 [153]"WORK AREA WAIT" 3820 [153]"";:[129] R[178]0[164]19:[153]CG$;:[130]:[153]"(null)(null)(null)(null)(null)(null)(null)(null)(null)(null)(null)(null)(null)(null)(null)(null)(null)(null)(null)(null)(null)(null)(null)(null)FN"; 3825 [129] R[178]0 [164] 14 [169] 2:[151] R[170]53248,25[170]R[172]15:[151] R[170]53249,52:[130]:[151]53264,0 3830 [153] M$(1);:[129] R[178]53287 [164] 53294:[151]R,14:[130]:[151]53277,0:[151]53271,0 3840 [137]1080